#include "key.h"
#include "STC8G_H_Delay.h"

sbit KEY0 = P1 ^ 7;
sbit KEY1 = P5 ^ 4;

void key_init(void)
{
    GPIO_InitTypeDef GPIO_InitStructure;

    GPIO_InitStructure.Pin = GPIO_Pin_7  ;
    GPIO_InitStructure.Mode = GPIO_PullUp;
    GPIO_Inilize(GPIO_P1, &GPIO_InitStructure);

    GPIO_InitStructure.Pin = GPIO_Pin_4  ;
    GPIO_InitStructure.Mode = GPIO_PullUp;
    GPIO_Inilize(GPIO_P5, &GPIO_InitStructure);
}

u8 KEY_Scan(void)
{
    static char key_up = 1;

    if (key_up && (KEY0 == 0 || KEY1 == 0))
    {
        delay_ms(10);
        key_up = 0;
        if (KEY0 == 0)
            return KEY0_PRES;
        else if (KEY1 == 0)
            return KEY1_PRES;
    }
    else if (KEY0 == 1 && KEY1 == 1 )
        key_up = 1;
    return 0;
}
